#pragma once
#include "..\SGD Wrappers\SGD_Listener.h"
#include "../SGD Wrappers/SGD_Declarations.h"
#include "../SGD Wrappers/SGD_Handle.h"

class SoundPlayer : public SGD::Listener
{
public:
	SoundPlayer();
	~SoundPlayer();

	//Listener interface
	virtual void HandleEvent(const SGD::Event* event) override;

	//Interface
	void Enter();
	void Exit();

private:
	//Pointer to the audio manager
	SGD::AudioManager* audio = nullptr;
	
	//Audio handles
	SGD::HAudio playerHurt = SGD::INVALID_HANDLE;
	SGD::HAudio grappleFire = SGD::INVALID_HANDLE;
	SGD::HAudio grappleConnect = SGD::INVALID_HANDLE;
	SGD::HAudio enemyCollide = SGD::INVALID_HANDLE;
	SGD::HAudio planetCollide = SGD::INVALID_HANDLE;
	SGD::HAudio lightOrbCollide = SGD::INVALID_HANDLE;
	SGD::HAudio enemyFire = SGD::INVALID_HANDLE;
	SGD::HAudio acheivement = SGD::INVALID_HANDLE;
	SGD::HAudio grappleDetach = SGD::INVALID_HANDLE;
	SGD::HAudio menuMove = SGD::INVALID_HANDLE;
	SGD::HAudio menuSelect = SGD::INVALID_HANDLE;
};

